package br.com.velp.sudecap.entidade;

import br.com.velp.sudecap.enumerator.TipoEventoEnum;
import java.util.Date;
import javax.persistence.*;

/**
 * <sumario>
 * <objetivo> "Rastreabilidade" </objetivo>
 * <autor> EDUARDO SANTOS DE OLIVEIRA </autor>
 * <versao>1.0.0.0</versao>
 * <data_criacao> 17.07.2013 </data_criacao>
 * <data_ultima_alteracao> N/A </data_ultima_alteracao>
 * <requisitos_afetados> NA </requisitos_afetados>
 * <descricao> Bean Responsável Pelo Mapeamento da Tabela LOG_EVENTO </descricao>
 * </sumario>
 */
@Entity
@Table(name = "LOG_EVENTO")
public class LogEvento extends EntityBase {
    
    public static final Long serialVersionUID = 1L;
    
    @Id
    @SequenceGenerator(name = "SQ_ID_LOG_EVT", sequenceName = "SQ_ID_LOG_EVT", allocationSize = 1)
    @GeneratedValue(generator = "SQ_ID_LOG_EVT")
    @Column(name = "ID_LOG_EVENTO", nullable = false, unique = true)    
    private Long id;
    
    @Column(name = "ID_USUARIO")    
    private Long idUsuario;
    
    @Column(name = "ID_REGISTRO")    
    private Long idRegistro;
    
    @Column(name = "CONTROLADOR", length = 50)    
    private String controlador;
    
    @Column(name = "TIPO_EVENTO", length = 2)    
    private String tipoEvento;
    
    @Column(name = "DESCRICAO", length = 4000)    
    private String descricao;
    
    @Column(name = "USUARIO", length = 50)    
    private String usuario;
    
    @Column(name = "DATA_HORA")    
    @Temporal(javax.persistence.TemporalType.TIMESTAMP)
    private Date dataHora;

    public LogEvento() {
    }

    public LogEvento(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getIdUsuario() {
        return idUsuario;
    }

    public void setIdUsuario(Long idUsuario) {
        this.idUsuario = idUsuario;
    }

    public Long getIdRegistro() {
        return idRegistro;
    }

    public void setIdRegistro(Long idRegistro) {
        this.idRegistro = idRegistro;
    }

    public String getControlador() {
        return controlador;
    }

    public void setControlador(String controlador) {
        this.controlador = controlador;
    }

    public String getDescricao() {
        return descricao;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public String getTipoEvento() {
        return tipoEvento;
    }
    
    public String getTipoEventoStr() {
        return TipoEventoEnum.getDescricao(getTipoEvento());
    }

    public void setTipoEvento(String tipoEvento) {
        this.tipoEvento = tipoEvento;
    }

    public String getUsuario() {
        return usuario;
    }

    public void setUsuario(String usuario) {
        this.usuario = usuario;
    }

    public Date getDataHora() {
        return dataHora;
    }

    public void setDataHora(Date dataHora) {
        this.dataHora = dataHora;
    }
    
}
